#在Python 2.7之后，with 支持同时对多个文件的上下文进行处理

#日志计数字升级版
"""user_dict={}
with open('file/info.txt',mode='r',encoding='utf-8') as file_object:
    for line in file_object:
        user_ip=line.split(' ')[0]
        if user_ip in user_dict:
            user_dict[user_ip]+=1
        else:
            user_dict[user_ip]=1
print(user_dict)
"""
from base64 import encode

#筛选出股票当前价格大于20 的所有的股票信息
"""with open('file/info.txt',mode='r',encoding='utf-8') as file_object:
    #1.调过第一行
    file_object.readline()
    #2.接着往下读
    for line in file_object:
        text=line.split(',')[2]
        price=float(text)
        if price >20 :
            print(line.strip())
"""
#根据要求修改文件的内容，原文件内容如下：inffo.txt
#请将文件中的 luffycity修改为 pythonav
"""
-文件读到内存，再通过replace(适用于小文件，不适用于大文件)
-挨个位置读文件的内容，遇到luffycity将其替换为为 pythonav(不可取)
-同时打开两个文件，读+写(适用于大小文件)
"""
with open("file/info.txt",mode='r',encoding='utf-8') as read_file_object,open("file/new.txt",mode='w',encoding='utf-8') as write_file_object:
    for line in read_file_object:
        new_line=line.replace("luffycity","pythonav")
        write_file_object.write(new_line)
#重命名
import shutil
shutil.move("file/new.txt","file/info.txt")